var express = require('express');
var router = express.Router();
var db = require("ykt-mongo")
// jsonwebtoken express-jwt
let jwt = require("jsonwebtoken")
let secret = require("../jwtAuth/secret")

// 注册接口
router.post("/register", function (req, res, next) {
  // 接收前端传过来的账号、密码
  console.log("访问了注册接口");
  let userData = req.body
  console.log("userData", userData);

  // mysql、mongodb
  db.collection("users").insert(userData, function (data) {
    console.log("添加的结果", data);
    if (data.result.ok == 1 && data.result.n == 1) {
      res.send({
        code: 0,
        msg: "注册成功！"
      })
    } else {
      res.send({
        code: 1,
        msg: "注册失败！"
      })
    }
  })
})

// 登录接口
router.post("/login", function (req, res, next) {
  // 拿到前端传过来的账号和密码
  let userData = req.body
  console.log("需要登录的账号密码", userData);

  db.collection("users").find(userData, function (data) {
    console.log("查询到的结果", data);
    if (data.length > 0) {
      // 根据用户的账号、密码、tangfafa自定义密码字符串 生成一个token字符串
      // 鉴权
      let token = jwt.sign(userData, secret, {
        expiresIn: 60 * 60 * 24 * 120
      })
      res.send({
        token,
        code: 0,
        msg: "登录成功！"
      })
    } else {
      res.send({
        code: 1,
        msg: "账号密码错误，请重新登录！"
      })
    }
  })
})

// 检测手机号是否被注册过
router.get("/checkPhone", function (req, res, next) {
  console.log("请求了checkPhone");
  let { phone } = req.query
  db.collection("users").find({ phone }, function (data) {
    console.log(65, "查询的结果", data);
    if (data.length > 0) {
      res.send({
        code: 1,
        msg: "当前手机号已经被注册了，请跳转登录！"
      })
    } else {
      res.send({
        code: 0,
        msg: "可以注册！"
      })
    }
  })
})

module.exports = router;
